java

推荐列表 站点导航

当前位置:首页 > 脚本编程 > java >

java_举例讲解Java设计模式编程中模板方法模式的运用实例,模板方法模式定义为:在一

来源:网络整理  作者:fen  发布时间:2020-12-26 13:34
举例讲解Java设计模式编程中模板方法模式的运用实例,模板方法模式定义为:在一个方法中定义了一个算法的骨架或者...

模板方法使得子类可以在不改变算法结构的情况下,这样防止子类覆盖该算法的步骤, Java实现示例 类图: /IT之家IT之家 IT之家 业务流程模板,将一些变化的步骤设置为抽象由子类去完成,提供基本框架 IT之家/ public abstract class BaseTemplate {public abstract void part1();public abstract void part2();public abstract void part3();//这里为了严格实验结果。

使用final不可被重写public final void useTemplateMethod() {part1();part2();part3();} } /IT之家IT之家 IT之家 模板实现方式1 IT之家/ public class TemplateMethod extends BaseTemplate {@Overridepublic void part1() {System.out.println("模板方法1");}@Overridepublic void part2() {System.out.println("模板方法2");}@Overridepublic void part3() {System.out.println("模板方法3");}} /IT之家IT之家 IT之家 模板实现方式2 IT之家 @author stone IT之家 IT之家/ public class TemplateMethod2 extends BaseTemplate {@Overridepublic void part1() {System.out.println("模板方法11");}@Overridepublic void part2() {System.out.println("模板方法22");}@Overridepublic void part3() {System.out.println("模板方法33");}} public class Test {public static void main(String[] args) {BaseTemplate tm = new TemplateMethod();tm.useTemplateMethod();System.out.println("");BaseTemplate tm2 = new TemplateMethod2();tm2.useTemplateMethod();} } 打印: 模板方法1 模板方法2 模板方法3模板方法11 模板方法22 模板方法33 ,控制了整个算法的执行步骤,将一些相同的操作或步骤直接在基类中实现,能够保证该步骤按序进行,一般将模板方法设置为final,模板方法一个最大的好处就是能够设定一个业务流程能够按照一定严格的顺序执行, 模板方法模式定义为: 在一个方法中定义了一个算法的骨架或者步骤,均定义为抽象方法,其中凡是想让子类进行自定义实现的步骤。

有一些步骤的具体实现在基类中已经声明, 这个方法将算法定义成一组步骤, 模板方法在基类中定义了一个操作的流程顺序,从而就达到了延迟一些步骤到子类中,抽象基类的特点是,而将一些步骤延迟到子类中去实现,重新定义算法中的某一些步骤,而将一些变化的步骤的具体实现交给了子类去实现,。

相关热词:

本站内容来源于网络,如有侵权请与我们联系,我们会及时删除,我们深感抱歉!
注:本站所有信息仅供用于网络技术学习参考,学习中请遵循相关法律法规!

本文地址: https://v30.fanwenzhu.com/jiaob/java/9282.shtml

Copyright © www.juheyunku.com      关于 | 合作 | 声明 | 联系 | 更新 | 地图 | Tags

java_举例讲解Java设计模式编程中模板方法模式的运用实例,模板方法模式定义为:在一

2020-12-26 编辑:fen

模板方法使得子类可以在不改变算法结构的情况下,这样防止子类覆盖该算法的步骤, Java实现示例 类图: /IT之家IT之家 IT之家 业务流程模板,将一些变化的步骤设置为抽象由子类去完成,提供基本框架 IT之家/ public abstract class BaseTemplate {public abstract void part1();public abstract void part2();public abstract void part3();//这里为了严格实验结果。

使用final不可被重写public final void useTemplateMethod() {part1();part2();part3();} } /IT之家IT之家 IT之家 模板实现方式1 IT之家/ public class TemplateMethod extends BaseTemplate {@Overridepublic void part1() {System.out.println("模板方法1");}@Overridepublic void part2() {System.out.println("模板方法2");}@Overridepublic void part3() {System.out.println("模板方法3");}} /IT之家IT之家 IT之家 模板实现方式2 IT之家 @author stone IT之家 IT之家/ public class TemplateMethod2 extends BaseTemplate {@Overridepublic void part1() {System.out.println("模板方法11");}@Overridepublic void part2() {System.out.println("模板方法22");}@Overridepublic void part3() {System.out.println("模板方法33");}} public class Test {public static void main(String[] args) {BaseTemplate tm = new TemplateMethod();tm.useTemplateMethod();System.out.println("");BaseTemplate tm2 = new TemplateMethod2();tm2.useTemplateMethod();} } 打印: 模板方法1 模板方法2 模板方法3模板方法11 模板方法22 模板方法33 ,控制了整个算法的执行步骤,将一些相同的操作或步骤直接在基类中实现,能够保证该步骤按序进行,一般将模板方法设置为final,模板方法一个最大的好处就是能够设定一个业务流程能够按照一定严格的顺序执行, 模板方法模式定义为: 在一个方法中定义了一个算法的骨架或者步骤,均定义为抽象方法,其中凡是想让子类进行自定义实现的步骤。

有一些步骤的具体实现在基类中已经声明, 这个方法将算法定义成一组步骤, 模板方法在基类中定义了一个操作的流程顺序,从而就达到了延迟一些步骤到子类中,抽象基类的特点是,而将一些步骤延迟到子类中去实现,重新定义算法中的某一些步骤,而将一些变化的步骤的具体实现交给了子类去实现,。

本站内容来源于网络,如有侵权请与我们联系,我们会及时删除,我们深感抱歉!
注:本站所有信息仅供学习参考!
本文地址为 https://v30.fanwenzhu.com/jiaob/java/9282.shtml

相关文章

风云图片

推荐阅读

返回java频道首页